//#include<iostream>
//using namespace std;
//long long int ans=0;
//long int d[1000];
//void fun(int a){
//	if(a==1){
//		ans++;
//		return ;
//	}
//	ans++;
//	for(int i=a/2;i>0;i--){
//		fun(i);
//	}
//}
//int main(){
//	int n;
//	cin>>n;
//	fun(n);
//	cout<<ans;
//}
#include<iostream>
using namespace std;
long long int d[1001];
int len;
long long int fun(int a){
	if(len>=a)
		return d[a];
	for(int i=1;i<=a/2;i++)
		d[a]+=fun(i);
	d[a]+=1;
	len++;
	return d[a];
}

int main(){
	d[1]=1;
	len=1;
	int n;
	cin>>n;
	cout<<fun(n);
}


//int main(){
//	int n;
//	cin>>n;
//	for(int i=1;i<=n;i++){
//		for(int j=1;j<=i/2;j++){
//			d[i]+=d[j];
//		}
//		d[i]+=1;
//	}
//	cout<<d[n];
//}
